//数组分块、数组划分——》双指针   
class Solution {  
public:   //dest = -1  还未开始处理，不知道最后一个非0元素的位置
    void moveZeroes(vector<int>& nums) {
        for(int dest = -1, cur = 0; cur < nums.size(); cur++)
        {
            if(nums[cur])
                swap(nums[++dest], nums[cur]);
        }
    }
};
